From f3645308a106058647fdc290f907fce6c41576bc Mon Sep 17 00:00:00 2001 From: "kaf24@scramble.cl.cam.ac.uk" Date: Thu, 22 Jan 2004 21:07:39 +0000 Subject: [PATCH] bitkeeper revision 1.687 (40103b9b_1gDIgjZpv4iQ_7yaCD9YQ) xl_block.c: Fix user data handling in cdrom ioctl. --- xenolinux-2.4.24-sparse/arch/xeno/drivers/block/xl_block.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xenolinux-2.4.24-sparse/arch/xeno/drivers/block/xl_block.c b/xenolinux-2.4.24-sparse/arch/xeno/drivers/block/xl_block.c index 085120c75b..4be2f56e6a 100644 --- a/xenolinux-2.4.24-sparse/arch/xeno/drivers/block/xl_block.c +++ b/xenolinux-2.4.24-sparse/arch/xeno/drivers/block/xl_block.c @@ -147,6 +147,7 @@ int xenolinux_block_ioctl(struct inode *inode, struct file *filep, struct hd_geometry *geo = (struct hd_geometry *)argument; struct gendisk *gd; struct hd_struct *part; + int i; /* NB. No need to check permissions. That is done for us. */ @@ -207,8 +208,8 @@ int xenolinux_block_ioctl(struct inode *inode, struct file *filep, case CDROMMULTISESSION: DPRINTK("FIXME: support multisession CDs later\n"); - memset((struct cdrom_multisession *)argument, 0, - sizeof(struct cdrom_multisession)); + for ( i = 0; i < sizeof(struct cdrom_multisession); i++ ) + if ( put_user(0, (byte *)(argument + i)) ) return -EFAULT; return 0; default: -- 2.30.2